// pages/personal/personal.js
var api = require('@config/api.js');
var util = require('@utils/util1.js');
var user = require('@utils/user.js');

var app = getApp();


Page({

  /**
   * 页面的初始数据
   */
  data: {
    matchedItems: [],
    userInfo: {},
    userCheck: null,
    avatar: '',
    nickname: '',
    todayReward: '10',
    message: '',
    hasCheckedIn: false,
    checkinStatus: '今日未签到',
  },


  onLoad() {
    this.checkInStatus();
    this.getNickname();
    this.getjifen();
    this.duihuan()
  },

  getjifen() {
    util.request('https://kaiyuan.likh.xyz/wx/user/checkIn/get', {}, 'GET').then(res => {
      if (res && res.userCheck) {
        this.setData({
          userCheckInfo: res.userCheck // 更新页面数据
        })
      }
    }).catch(err => {
      console.error('请求失败:', err)
      wx.showToast({
        title: '加载失败',
        icon: 'none'
      })
    })
  },
  // 获取并更新签到状态
  checkInStatus() {
    util.request('https://kaiyuan.likh.xyz/wx/user/checkIn/do', {}, 'POST').then(function (res) {
      // 后端的code有两个值 0为未签到 1为已签到
      if (res.code === 1) {
        // 更新 hasCheckedIn 为已签到状态
        this.setData({
          message: res.message,
          hasCheckedIn: true,
          checkinStatus: '今日已签到'
        });
      } else if (res.code === 0) {
        // 更新 message 为错误信息或提示信息
        this.setData({
          message: res.message
        });
      }
      wx.hideLoading();
    }.bind(this)).catch(function (err) {
      console.error('请求失败', err);
      wx.hideLoading();
      wx.showToast({
        title: '请求失败，请检查网络',
        icon: 'none',
        duration: 2000
      });
    });
  },

  duihuan() {
    const that = this; // 保存正确的 this 指向
    wx.request({
      url: 'https://kaiyuan.likh.xyz/admin/check/getAllExchangeHistory',
      method: 'GET',
      success(res) {
        console.log(res.data);
        wx.getStorage({
          key: 'userId',
          success(cacheRes) {
            const useridFromCache = cacheRes.data;
            const items = res.data;
            const matchedItems = items.filter(item => item.userId === useridFromCache);
            // 使用 setData 更新页面数据
            that.setData({
              matchedItems: matchedItems // 将匹配结果存入 data
            });
          },
          fail(err) {
            console.error('读取缓存失败:', err);
            that.setData({
              matchedItems: []
            }); // 清空数据
          }
        });
      },
      fail(err) {
        console.error(err);
        that.setData({
          matchedItems: []
        }); // 清空数据
      }
    });
  },

  getNickname: function () {
    var userInfo = wx.getStorageSync('userInfo');
    var nickname = userInfo.nickName;
    var avatarUrl = userInfo.avatarUrl; // 注意这里应该是 avatarUrl
    this.setData({
      nickname,
      avatarUrl // 同样，这里也应该是 avatarUrl
    });
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    this.getNickname();
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})